<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    
  </style>
</head>
<body>
  
</body>
<script>

  // 1. 选择排序：从左向右依次取出每个数据，和之后的数据做比较，发现最小的或最大的，然后做交换
  //   - 升序
  //   - 0-1，0-2，0-3，0-4
  //   - 1-2，1-3，1-4
  //   - 2-3，2-4
  //   - 3-4

  var arr = [5, 4, 3, 1, 2];
  // 从左向右依次取出每个数据
  for(var i=0;i<arr.length-1;i++){
    // 将当前数据放在一个新容器中，用于和之后所有数据比较
    var x = arr[i];
    // 同步保存新容器中数据的索引
    var xIndex = i;
    // 遍历之后所有的数据
    for(var j=i+1;j<arr.length;j++){
      // 比较
      if(x > arr[j]){
        // 如果发现有比新容器中的数据小的数据，记录该数据
        x = arr[j];
        // 同步就该数据的索引
        xIndex = j;
      }
    }
    // 新容器中的数据必然为本轮比较的最小值
    // 先将本次参与比较位置的数据放在最小值的位置
    arr[xIndex] = arr[i];
    // 将最小值的数据，放在本次参与比较的位置
    arr[i] = x;
  }
  console.log(arr);




  
</script>
</html>